home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 19 / Amiga Plus Leser CD 19.iso / Sound / DelfMPEG / DelfMPEG.readme < prev   
Text File  |  2002-11-17  |  9KB  |  232 lines

  1. Short:  MPEG audio player for Delfina DSP
  2. Author: Smack/Infect! (Michael Henke)
  3. Type:   mus/play
  4.  
  5. $VER: DelfMPEG 0.9 (Tue 29-Oct-2002)
  6.  
  7.  
  8.  
  9. #features
  10.  
  11.   -plays MPEG audio files with almost no CPU load
  12.    (Delfina's DSP56002 does all the decoding and playback)
  13.  
  14.   -supports MPEG-1 layer II and III
  15.  
  16.   -NEW: can write the decoded data to a file
  17.  
  18.   -ARexx interface
  19.    (full 'remote control' capability)
  20.  
  21.   -multi-stage buffering system
  22.    (for smooth playback while loading from disk)
  23.  
  24.   -free software (full source code included, of course)
  25.  
  26.  
  27.  
  28. #required
  29.  
  30.   -CPU 68020+
  31.   -AmigaOS V37+
  32.   -Delfina DSP board
  33.   -asyncio.library V39+
  34.  
  35.   -developed on A1200 - OS3.1/68030+882@40MHz/16MBFastRAM/Delfina1200DSP
  36.   -tested on various machines with Delfina1200, Delfina Lite or Plus
  37.  
  38.  
  39.  
  40. #recommended
  41.  
  42.   -reqtools.library V38+
  43.   -latest version of delfina.library
  44.    (currently 4.14, see also 'known problems' section)
  45.   -some MPEG audio files :)
  46.  
  47.  
  48.  
  49. #changes since previous release
  50.  
  51.   -mp3 decoder: tiny speedup; uses less DSP memory; output level corrected
  52.   -mp2 decoder: output level corrected
  53.   -OUTFILE option added (write decoded data to a file)
  54.  
  55.  
  56.  
  57. #how to use
  58.  
  59.   DelfMPEG is a shell-only program.  The following options can be used:
  60.  
  61.   FILES ......... -one or more filenames. (MPEG files or playlists)
  62.                   -if omitted a reqtools file requester appears.
  63.                   -if a file is not recognized as MPEG-1 audio then it is
  64.                    interpreted as a playlist file. playlists are simple text
  65.                    files that can be generated by popular player programs,
  66.                    such as AMPlifier, Winamp (*.m3u) and others.
  67.                   -playlist format: one file name per line, comment lines
  68.                    beginning with a '#' character are ignored.
  69.  
  70.   OUTFILE <filename>
  71.                   -write decoded data to this file (no playback).
  72.                   -the output file will be overwritten without warning!
  73.                   -output file format: raw PCM (no AIFF or WAV header),
  74.                    16 bits per sample (big endian),
  75.                    number of channels (1=mono or 2=stereo) and sampling
  76.                    frequency (32000, 44100 or 48000 Hz) are taken from the
  77.                    MPEG input file.
  78.                   -note: you can use DelfSF to play the raw file.
  79.                    (Aminet:mus/play/DelfSF.lha)
  80.  
  81.   AREXX ......... -activate ARexx mode.
  82.                   -please read the file 'arexx.txt' for details.
  83.                   -there are some example scripts in the 'rexx' sub-directory
  84.  
  85.   VERBOSE/-v .... -output more information.
  86.  
  87.   NOPLAY/-n ..... -don't play but just output some information.
  88.                   -this works also without a Delfina board.
  89.  
  90.   SHOWTAG/-t .... -display ID3v1 tag before playing.
  91.                   -some extra information that can be appended to MPEG audio
  92.                    files, such as title, artist etc.
  93.  
  94.   MONO/-m ....... -decode only the left channel of stereo files.
  95.                   -WARNING: degrades playback quality!
  96.                   -this option can be used to reduce DSP load on Delfina Lite
  97.                    boards which have a slower DSP (40 MHz instead of 73 MHz)
  98.  
  99.   DACRATE/-d <number>   (default: 0)
  100.                   -set Delfina's codec rate to a fixed value (in kHz).
  101.                   -WARNING: can degrade playback quality!
  102.                   -this option can be used to reduce DSP load on Delfina Lite
  103.                    boards which have a slower DSP (40 MHz instead of 73 MHz)
  104.                   -the default value of 0 (zero) means "best quality"
  105.                   -the given value is automatically rounded to the nearest
  106.                    available Delfina rate:  16, 27, 32 or 48 kHz.
  107.                    (for Delfina 1200 and Plus: 12, 24, 36 or 48 kHz)
  108.  
  109.   VOLUME/-vol <number>  (default: 100)
  110.                   -set the playback volume (in per cent, range 0...200).
  111.                   -WARNING: can degrade playback quality!
  112.                    if the volume is boosted (101...200) there can distortions
  113.                    caused by output clipping.
  114.  
  115.   FRAMEBUF/-f <number>  (default: 100)
  116.                   -set the number of read-ahead frame buffers.
  117.                    (does not influence performance)
  118.  
  119.   ASYNCBUF/-a <number>  (default: 128)
  120.                   -set the size of the AsyncIO buffer (in Kbytes).
  121.                    (large IO-buffers = faster reading from disk)
  122.  
  123.   FFSKIP/-ff <number>   (default: 10)
  124.                   -set the number of frames that are skipped during fast
  125.                    forward mode, i.e. when Ctrl-F is pressed
  126.  
  127.   NOFASTL/-nl
  128.   NOFASTP/-np ... -the fast internal DSP memory is NOT used (L-data/Program)
  129.                   -only useful for benchmarks or debugging
  130.  
  131.   NOTIMER/-nt ... -suppress output of the position timer during playback.
  132.                    (recommended for playing background music while you are
  133.                    using other programs)
  134.  
  135.   STRICT/-s ..... -abort playback when an error in input file is detected.
  136.                    (normally DelfMPEG tries to continue playback by skipping
  137.                    the error in the file)
  138.  
  139.  
  140.   During playback these keys can be used:
  141.  
  142.   Ctrl-F   fast forward
  143.   Ctrl-E   pause/continue
  144.   Ctrl-C   stop current file, start next file
  145.   Ctrl-D   quit program
  146.  
  147.  
  148.  
  149. #known problems
  150.  
  151.   -DelfMPEG only recognizes MPEG-1 audio files.
  152.    not supported: MPEG-2 or mixed audio/video files.
  153.  
  154.   -some mp3 files are not played correctly! what's wrong with DelfMPEG?
  155.  
  156.    1) DSP load approaches or exceeds the 100% limit on slow Delfinas.
  157.       symptom: audible "drop-outs", DECODER_BUSY warning in VERBOSE mode.
  158.       actions: use MONO or DACRATE options to reduce DSP load (and quality)
  159.                or overclock your Delfina Lite (by hardware modification or
  160.                software hack "DelfTweak") or buy a new, faster Delfina.
  161.  
  162.    2) in VERBOSE mode an "unexpected EOF" error is reported for some files.
  163.       symptom: just the error message.
  164.       actions: this seems to be caused by some (bad) MPEG audio encoders that
  165.                truncate the last frame in mp3 files. use LAME instead, it's
  166.                the best mp3 encoder around, IMO.
  167.  
  168.   -DelfMPEG causes deadlocks/crashes.
  169.  
  170.    1) delfina.library 4.14  -  the "fake crash" bug
  171.       symptom: soon after DelfMPEG started playing the "Delfina crashed"
  172.                requester appears; DelfLoad display jumps to 100%.
  173.       actions: wait for Petsoff to release a fixed delfina.library.
  174.                ignore the "Delfina crashed" requester (that's right, do not
  175.                reply it while DelfMPEG is playing).
  176.                or you could use an older version of delfina.library (4.13 or
  177.                lower) - not recommended, there seem to be other problems.
  178.  
  179.    2) delfina.library 4.14 and lower  -  the "AHI killer" bug
  180.       symptom: AHI and DelfAIFF crash if used after DelfMPEG. the system
  181.                freezes and must be rebooted.
  182.       actions: wait for Petsoff to release a fixed delfina.library.
  183.                use the NOFASTP option of DelfMPEG, it avoids the bug but it
  184.                also slows down the decoder!
  185.                or use the workaround: quit DelfMPEG and all other Delfina
  186.                programs, use "avail flush" to remove delfina.library from
  187.                memory and then start your AHI programs.
  188.  
  189.    3) delfina.library beta versions > 4.14  -  the "sudden freeze" problem
  190.       symptom: while playing MPEG files the system might suddenly "freeze"
  191.                (playback stops; CPU load jumps to 100%, thus blocking any
  192.                running applications)
  193.       actions: the reason for this problem is not known. it could be a bug
  194.                in delfina.library, at least there exists an unofficial
  195.                patched version of the library that seems to work better.
  196.  
  197.  
  198.  
  199. #acknowledgements
  200.  
  201.   DelfMPEG uses ideas/code from:
  202.  
  203.   -MPEG Audio Layer II decoder by Fredrik Noring and Tomas Berndtsson
  204.    (an mp2 player for Atari Falcon, DSP56K code)
  205.   -amp11 by Niklas Beisert (clean and fast C++ code)
  206.   -FalcAMP by Denis "STGhost" Huguet and David "Splash" Carrere
  207.    (an mp3 player for Atari Falcon, DSP56K code)
  208.   -reference code by MPEG Software Simulation Group ("the original" C code)
  209.  
  210.  
  211.  
  212. #author
  213.  
  214.   mailto: smack42@web.de
  215.  
  216.   DelfMPEG - MPEG audio player for Delfina DSP
  217.   Copyright (C) 1999-2002  Michael Henke
  218.  
  219.   This program is free software; you can redistribute it and/or modify
  220.   it under the terms of the GNU General Public License as published by
  221.   the Free Software Foundation; either version 2 of the License, or
  222.   (at your option) any later version.
  223.  
  224.   This program is distributed in the hope that it will be useful,
  225.   but WITHOUT ANY WARRANTY; without even the implied warranty of
  226.   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  227.   GNU General Public License for more details.
  228.  
  229.   You should have received a copy of the GNU General Public License
  230.   along with this program; if not, write to the Free Software
  231.   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  232.